#pragma once

#include "..\\..\\Common\\DSExceptions.h"

template <typename T>
class BaseQueue {
public :
	BaseQueue();
	virtual ~BaseQueue();
	virtual void offer(T a_oData) = 0;
	virtual T poll() = 0;
	virtual T peek() = 0;
	virtual bool canOffer() = 0;
	virtual bool canPoll() = 0;
	virtual int getDataCount() = 0;
};

template <typename T>
BaseQueue<T>::BaseQueue() {
}

template <typename T>
BaseQueue<T>::~BaseQueue() {

}